package com.mmall.common;

import lombok.Getter;
import lombok.Setter;

import java.util.HashMap;
import java.util.Map;

@Getter
@Setter
public class JsonData {
    /**
     * 返回结果的状态
     */
    private Boolean ret;

    /**
     * 返回的错误信息
     */
    private String msg;

    /**
     * 传入的数据信息
     */
    private Object data;

    public JsonData(Boolean ret){
        this.ret = ret;
    }

    /**
     * 成功
     * @param data
     * @param msg
     * @return
     */
    public static JsonData success(Object data,String msg){
        JsonData jsonData = new JsonData(true);
        jsonData.setData(data);
        jsonData.setMsg(msg);
        return  jsonData;
    }

    /**
     * 成功
     * @param data
     * @return
     */
    public static JsonData success(Object data){
        JsonData jsonData = new JsonData(true);
        jsonData.setData(data);
        return jsonData;
    }

    /**
     * 成功
     * @return
     */
    public static JsonData success(){
        return  new JsonData(true);
    }

    /**
     * 失败
     * @param msg
     * @return
     */
    public static JsonData fail(String msg){
        JsonData jsonData = new JsonData(false);
        jsonData.setMsg(msg);
        return  jsonData;
    }

    /**
     * 失败
     * @return
     */
    public static JsonData fail(){
        return  new JsonData(false);
    }

    public Map<String,Object> toMap(){
        HashMap<String,Object> map = new HashMap<String, Object>();
        map.put("result",ret);
        map.put("msg",msg);
        map.put("data",data);
        return map;
    }
}
